package com.zr.java8.fun;

import java.util.ArrayList;
import java.util.function.Function;

public class FunctionDemo {
    public static void main(String[] args) {
        // 匿名内部类，
        // Function接口
        //TODO 两个泛型 接收一个类型的参数，返回一个类型的参数

        Function<String, String> function = new Function<String, String>() {
            @Override
            public String apply(String str) {
                return str;
            }
        };
        //TODO 在流计算的 map（）方法中，map() 方法接收一个 Function 接口用于类型映射
        ArrayList<String> list = new ArrayList<>();
        list.stream().map(function);

        System.out.println(function.apply("dsad"));

        //lambda表达式
        Function<String, String> function2 = (str)->{ return str;};
        System.out.println(function2.apply("dsad"));
    }
}
